package com.fz.mapper;

import com.fz.entity.Student;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Select;

import java.util.List;
import java.util.Map;

/**
 * Created by webrx on 2017-08-25.
 */
public interface StudentMapper {
    //为了演示泛型，再创建一个Student类的接口
    //给这个方法使用配置的方式，所以再建一个配置的文件
    public List<Student> queryall();

    //再加个删除的方法
    public int deleteById(int id);

    //增加条件查询例如，求出某姓的学生
    @Select("select * from zz_student where name like #{name}")
    public List<Student> queryByName(String name);

    //查询学生人数的方法
    @Select("select count(*) from zz_student")
    public int count();

    //只想要学生的姓名和成绩
    @Select("select name,score from zz_student where id=#{id}")
    public Map<String,Object> showById(int id);

    //要所有学生的姓名和成绩
    @Select("select name,score from zz_student where 1=1")
    public List<Map<String,Object>> show();

    //清空所有学生信息
    @Delete("delete from zz_student where 1=1")
    public int deleteAll();

    //利用占位符的方式进行数据添加
    @Insert("insert into zz_student values(null,#{0},#{1},#{2})")
    public int adds(String name,String score,String address);

}
